package com.ruoyi.psi.quality.item.service;

import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.psi.quality.item.domain.InspectItem;
import com.ruoyi.psi.quality.item.mapper.InspectItemMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 质检项目
 * 业务层执行
 * @author Drj 2021/6/28
 */
@Service
public class InspectItemServiceImpl implements IInspectItemService {
    @Autowired
    private InspectItemMapper inspectItemMapper;

    /**
     * 查询所有质检项目
     *
     * @param inspectItem 查询条件
     * @return
     */
    @Override
    public List<InspectItem> selectInspectItemList(InspectItem inspectItem) {
        return inspectItemMapper.selectInspectItemList(inspectItem);
    }

    /**
     * 根据质检项目编号查询质检项目
     *
     * @param inspectItemId 质检项目编号
     * @return
     */
    @Override
    public InspectItem selectInspectItemById(int inspectItemId) {
        return inspectItemMapper.selectInspectItemById(inspectItemId);
    }

    /**
     * 新增质检项目
     *
     * @param inspectItem
     * @return
     */
    @Override
    public int insertInspectItem(InspectItem inspectItem) {
        if (StringUtils.isNotNull(inspectItemMapper.selectInspectItemById(inspectItem.getInspectItemId()))){
            //存在
            return 0;
        }
        return inspectItemMapper.insertInspectItem(inspectItem);
    }

    /**
     * 更新质检项目
     *
     * @param inspectItem
     * @return
     */
    @Override
    public int updateInspectItem(InspectItem inspectItem) {
        if (!StringUtils.isNotNull(inspectItemMapper.selectInspectItemById(inspectItem.getInspectItemId()))){
            //不存在
            return 0;
        }
        return inspectItemMapper.updateInspectItem(inspectItem);
    }

    /**
     * 删除质检项目
     * 仅更新质检项目删除标志
     *
     * @param inspectItem
     * @return
     */
    @Override
    public int updateInspectItemDeleteFlag(InspectItem inspectItem) {
        return inspectItemMapper.updateInspectItemDeleteFlag(inspectItem);
    }
}
